import pandas as pd
path=r"D:\Pyobject2023\object\Case\素材"
df=pd.read_excel(path+r"/1.02.xlsx","成本表2")
print(df)
mask=df["产品编码"].str.startswith('F', na=False)
dfs=(df.现在用量-df.以前用量)/df.以前用量
df.loc[mask,"增加"]="用量增加"+ dfs.apply(lambda x: "{:.0%}".format(x) if not pd.isnull(x) else "0%")
print(df)
返回值:
| 产品编码 | 成本项目_x | 以前用量 | 现在用量 | |
| 0 | 14061007 | 注塑件 | 1 | 5 |
| 1 | 14061008 | 注塑件 | 1 | 3 |
| 2 | 14064001 | 电镀件 | 1 | 5 |
| 3 | 14067044 | 冲压件 | 19 | 32 |
| 4 | 14085003 | 五金件 | 2 | 34 |
| 5 | 90010976 | 辅助材料 | 2 | 65 |
| 6 | 90011052 | 辅助材料 | 3 | 33 |
| 7 | 90160038 | 辅助材料 | 34 | 34 |
| 8 | F14063127 | 委外加工费 | 19 | 54 |
| 产品编码 | 成本项目_x | 以前用量 | 现在用量 | 增加 | |
| 0 | 14061007 | 注塑件 | 1 | 5 | NaN |
| 1 | 14061008 | 注塑件 | 1 | 3 | NaN |
| 2 | 14064001 | 电镀件 | 1 | 5 | NaN |
| 3 | 14067044 | 冲压件 | 19 | 32 | NaN |
| 4 | 14085003 | 五金件 | 2 | 34 | NaN |
| 5 | 90010976 | 辅助材料 | 2 | 65 | NaN |
| 6 | 90011052 | 辅助材料 | 3 | 33 | NaN |
| 7 | 90160038 | 辅助材料 | 34 | 34 | NaN |
| 8 | F14063127 | 委外加工费 | 19 | 54 | 用量增加184% |